//package com.espoir.shp.read04;
//
//import org.geotools.data.shapefile.ShapefileDataStore;
//import org.geotools.data.shapefile.ShapefileDataStoreFactory;
//import org.geotools.data.simple.SimpleFeatureIterator;
//import org.geotools.data.simple.SimpleFeatureSource;
//import org.opengis.feature.Property;
//import org.opengis.feature.simple.SimpleFeature;
//
//import javax.swing.tree.DefaultMutableTreeNode;
//import java.io.File;
//import java.nio.charset.Charset;
//import java.util.Iterator;
//
//public class Demo {
//    public static void main(String[] args) {
//        test01();
//        test02();
//    }
//
//    /**
//     *
//     * 方法名称: AddShapeData ；
//     * 方法描述:  添加本地shape文件 ；
//     * 参数 ：@param filePath :文件路径
//     * 参数 ：@param fileName :文件名
//     * 参数 ：@param layerTitle :图层名称
//     * 参数 ：@param maxActiveAltitude :图层可见最高视点
//     * 参数 ：@param minActiveAltitude :图层可见最低视点
//     * 参数 ：@return
//     * 返回类型: boolean ；
//     * 创建人：James；
//     * 创建时间：2014-11-25 下午5:19:48；
//     * @throws
//     */
//    public boolean AddShapeData(String filePath, String fileName,
//                                String layerTitle, double maxActiveAltitude,
//                                double minActiveAltitude)
//    {
//        boolean result = false;
//        try
//        {
//
//            ShapefileLoaderSPI.ShapefileLoader pShapefileLoader = new ShapefileLoaderSPI.ShapefileLoader();
//            pShapeLayer = pShapefileLoader.createLayerFromSource(filePath
//                    + fileName + ".shp");
//            pShapeLayer.setName(layerTitle);// 设置图层名称
//            pShapeLayer.setMaxActiveAltitude(maxActiveAltitude);
//            pShapeLayer.setMinActiveAltitude(minActiveAltitude);
//
//            worldWindowGLCanvas.getModel().getLayers().add(pShapeLayer);
//            //添加图层树节点
//            pVectorNode.add(new DefaultMutableTreeNode(layerTitle));
//            pLayerTree.updateUI();
//            result = true;
//
//        }
//
//        catch (Exception e)
//        {
//            // TODO: handle exception
//            System.out.println(e.getMessage());
//
//        }
//        return result;
//    }
//
//    private static void test01() {
//        ShapefileDataStoreFactory dataStoreFactory = new ShapefileDataStoreFactory();
//        try {
//            ShapefileDataStore sds = (ShapefileDataStore)dataStoreFactory.createDataStore(new File("D:\\resource\\省界原始\\省界.shp").toURI().toURL());
//            sds.setCharset(Charset.forName("GBK"));
//            SimpleFeatureSource featureSource = sds.getFeatureSource();
//            SimpleFeatureIterator itertor = featureSource.getFeatures().features();
//
//            while(itertor.hasNext()) {
//                SimpleFeature feature = itertor.next();
//                Iterator<Property> it = feature.getProperties().iterator();
//
//                while(it.hasNext()) {
//                    Property pro = it.next();
//                    System.out.println(pro);
//                }
//            }
//            itertor.close();
//        } catch (Exception e) {
//            e.printStackTrace();
//        }
//    }
//}
